Implementation of Cellular Automata using a Graphics Processing Unit
نویسنده
چکیده
Motivation Cellular Automata are used in Natural Science as well as in Social Sciences to simulate various processes. Since simulation of cellular automata is a calculation-intensive task, parallelization is desired and promises to be highly scalable this way due to the high locality of CAs. By comparing the performance of various kinds of cellular automata, some of them more of theoretical, some of them more of practical interest, the class of CA that is adequate for calculation on a GPU is explored. Results As a result, automata that only have a small number of states like the Game of Life or WireWorld (which proves the Turing completeness of this approach) do not perform well. The simulation on a CPU benefits even more from massive parallelization through bit vectors and logical operations, which are not available on the GPU. However, some cellular automata break the paradigm of having a small number of states. In fact, their state is represented by a tuple of floating-point numbers. The implementation of probabilisitc CA simulating a reaction diffusion process after FitzHugh and Nagumo uses two 32-bit floating point numbers for the state representation and achieves a speedup of 10 in comparison to the CPU version. Poster This poster gives an overview of the implementation of several cellular automata using a modern Graphics Processing Unit. It primarily presents screenshots of some of the implementations as well as sample code for the Game of Life and the Fitz-HughNagumo implementation. Also, a couple of subproblems are adressed, e. g. effective provision of pseudo-random numbers for probabilistic CAs as well as encoding states and state change tables in pixmaps. Another interesting feature is the use of certain texture-filtering modes for summing up or averaging values. Also, the drawbacks of simulating CAs on a GPU are discussed. There is no possibility of further interaction between cells or any global knowledge. E. g., CAs that require a global status to detect stability cannot be efficiently implemented this way. A negative example is brought up with the Sandbox CA. Serving as eye candy, implementations of the mandelbrot fractal and the propagation of waves are shown.
منابع مشابه
Fast Cellular Automata Implementation on Graphic Processor Unit (GPU) for Salt and Pepper Noise Removal
Noise removal operation is commonly applied as pre-processing step before subsequent image processing tasks due to the occurrence of noise during acquisition or transmission process. A common problem in imaging systems by using CMOS or CCD sensors is appearance of the salt and pepper noise. This paper presents Cellular Automata (CA) framework for noise removal of distorted image by the salt an...
متن کاملParallel Implementation of Particle Swarm Optimization Variants Using Graphics Processing Unit Platform
There are different variants of Particle Swarm Optimization (PSO) algorithm such as Adaptive Particle Swarm Optimization (APSO) and Particle Swarm Optimization with an Aging Leader and Challengers (ALC-PSO). These algorithms improve the performance of PSO in terms of finding the best solution and accelerating the convergence speed. However, these algorithms are computationally intensive. The go...
متن کاملGPGPU Implementation of Cellular Automata Model of Water Flow
In this paper we present how Cellular Automata model can be implemented for processing on Graphics Processing Unit (GPU). Recently, graphics processors have gained a lot of interest as an efficient architecture for general-purpose computation. Cellular Automata algorithms that are inherently parallel give the opportunity to achieve very high efficiency when they are implemented on GPUs. We demo...
متن کاملImplementation of the direction of arrival estimation algorithms by means of GPU-parallel processing in the Kuda environment (Research Article)
Direction-of-arrival (DOA) estimation of audio signals is critical in different areas, including electronic war, sonar, etc. The beamforming methods like Minimum Variance Distortionless Response (MVDR), Delay-and-Sum (DAS), and subspace-based Multiple Signal Classification (MUSIC) are the most known DOA estimation techniques. The mentioned methods have high computational complexity. Hence using...
متن کاملMulti-GPGPU Cellular Automata Simulations using OpenCL
The aim of this research it to examine the possibility of parallelizing the Frish-Hasslacher-Pomeau (FHP) model, a cellular automata algorithm for modeling fluid flow, on clusters of modern graphics processing units (GPUs). To this end an Open Computing Language (OpenCL) implementation for GPUs was written and compared with a previous, semi-automatic one based on the OpenACC compiler pragmas (S...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004